THIS BUTTON WILL PAINT OVER ANY ARTWORK CURRENTLY IN THE BACKGROUND OF THE STACK IN WHICH IT IS PLACED. PLEASE WORK ON A COPY OF THE STACK IN WHICH YOU THINK YOU MIGHT WANT TO USE THIS BUTTON!
Notice of lack of copyright:
This stack is freeware. You may do with it as you wish.
What does it do?
If you have ever created buttons and fields in the card plane of a stack, and then gone to the background plane and wondered where all of those card objects were located (especially if you were painting something specific to a card object) then you may wish to use this button. It gets the rectangle of each visible card object, then redraws the rectangle in the background plane. Each rectangle is then labeled as representing either a button or field, as well as showing the number of the object.
How it works:
Once the button is pressed a filled white round rectangle is painted in the background plane for each visible round rectangle button, and a filled white rectangle is painted for each visible field and all other types of visible buttons. The choice of filled rectangles was made in case the background in which they are drawn contains artwork, in which case an unfilled figure would be obscured.
In a second pass, each rectangle is redrawn unfilled. This will show the edges of each object in case they overlap, which would obscure part of one of the filled objects drawn in the first pass.
Finally, each object is labeled either as "Field #" or
"Button #".
Because it is rather slow (if there are a large number of objects to draw), and the cursor cannot simply be set to the "watch" (it changes back to whatever drawing tool cursor is being used at the time), I chose not to lock the screen during the operation. At least then you can see what is happening.
Limitations:
While I tried to preserve any settings that could be changed during the operation of this button, I was unable to find a way to reset multiple font style settings. Therefore, at the completion of the script the font style is reset to "plain".
How to use this button:
Simply copy the button labeled "Pinpointer" in the lower right corner of this card and paste it into the BACKGROUND of the card in which you would like to use it. It will work as well if pasted into the card layer, but will then also draw a representation of itself in the background layer.
(I know this may not please everyone, but if I made it not draw a representation of itself by having it check for the name "Pinpointer" someone would make a button with the same name and claim the script was flawed.)
Once you are finished with the button simply cut it from the card.
Snide remarks, whining, and lavish praise may be easyplexed to me: